home *** CD-ROM | disk | FTP | other *** search
/ Delphi Programmer's Power Pack / Delphi Volume 1.iso / e_to_l / fbuilder / history.txt < prev    next >
Text File  |  1996-09-15  |  8KB  |  256 lines

  1. FormulaBuilder Update History
  2.  
  3. [* BETA VERSION 0.5 -----------------------------------------------------*]
  4.  
  5. =================
  6. December 18, 1995
  7. =================
  8.  
  9. - a subtle bug in the type compatibility code was found and fixed.
  10.   In certain cases, it would conclude that strings and integers were
  11.   type compatible
  12.  
  13. - Forced Windows 80x87 emulation code to be linked into DLL
  14.  
  15. - Bug Fix : Parser code would call variable identification routines twice.
  16.  
  17. - Callback prototypes changed. Check the .HLP file
  18.  
  19. - FBFreeExpression in Visual Basic header file  - handle was passed
  20.   incorrectly by reference. Now passed by value
  21.  
  22. - fixed various prototypes in the C/C++ header file
  23.  
  24. - FBCopyValue function added
  25.  
  26. - FBStrlcpy renamed to FBStrncpy to avoid confusion for C/C++ programmers
  27.  
  28. - OnFindVariable, OnFindFields, OnGetVariable, OnSetVariable,
  29.   OnSetVariable, OnSetField Events added to Delphi Wrapper Classes. See
  30.   the .HLP for documentation.
  31.  
  32. - Bug Fix. Financial functions corrected. The code was derived from various
  33.   sources and and parameter orders got swapped. Calls now mirror
  34.   Quattro Pro 3.0, with the exception of NPV (see .hlp)
  35.  
  36. - Added type vtANY. Allows a variable of any type to be passed to
  37.   or returned from functions.  Because of this the following functions
  38.   have been changed to reflect this capability
  39.  
  40.   IIF(condition,trueExpr,falseExpr) now returns any type, and the last
  41.   2 arguments may be of any type
  42.  
  43.   ChooseStr and ChooseNum have been replaced by
  44.   Choose(index,expr1,expr2,expr3....)
  45.  
  46. - All strings, including function names, have been moved to string resources
  47.   to ease localization. Resource scripts have been added so you can modify
  48.   the strings for your locale.
  49.  
  50. - Delphi demo updated. Extensibility demo makes a bit more sense....
  51.  
  52. - TComponent subclasses of the Delphi wrapper classes are being tested.
  53.  
  54. - Exprlist.txt updated with financial functions
  55.  
  56. - im still working on C/C++ and Visual Basic examples. i just received
  57.   Borland's new compiler and Microsoft's VC++ 2.0 (day jobs do have benefits !)
  58.  
  59. - The product at this point has all the features scheduled for the version
  60.   1.0 release. Barring bug fixes, glaring ommissions, or absolutely 
  61.   irresistable ideas from beta testers, the API is fixed and stable.
  62.  
  63. ===========
  64. Jan 1, 1996
  65. ===========
  66.  
  67. - Type checking code made more accurate
  68.  
  69. - Delphi : LastErrorString renamed to StatusText in TExpression class
  70.  
  71. - Fixed bug in DLL code which returned an incorrect error code on type
  72.   conversion errors.
  73.  
  74. - Fixed internal variable processing. Used to cause infinite recursion when
  75.   used from TExpression.
  76.  
  77. - Delphi : Added DefaultVarProcessing property to TCustomExpression to control
  78.   whether FormulaBuilder handles variables internally, or whether the Onxxx
  79.   variable handling events get called.
  80.  
  81. - Delphi : Changed SetVariable to SetVarFromString, GetVariable to GetVarAsString.
  82.   Both have been made private.
  83.  
  84. - Delphi : Added property StringValues[const vname : TVarname] : string to allow
  85.   read/write access to the string representation of variable values.
  86.  
  87. - Delphi : Added write access methods for the event properties. This ensures that
  88.   the callbacks implemented in the Delphi wrapper units only get called for valid
  89.   event instances.
  90.  
  91. ===========
  92. Jan 2, 1996
  93. ===========
  94.  
  95. - Bug Fix : Type mismatches were detected
  96.   but an incorrect error code was returned.
  97.  
  98. ===========
  99. Jan 4, 1996
  100. ===========
  101.  
  102. - Bug Fix : Fixed a memory leak in the DLL
  103.  
  104.  
  105. ===========
  106. Jan 7, 1996
  107. ===========
  108.  
  109. - The internal evaluator class was not properly releasing memory in its
  110.   destructor. Fixed.
  111.  
  112. - STR function now takes any type and returns its string representation
  113.  
  114. ===========
  115. Jan 9, 1996
  116. ===========
  117.  
  118. - Extensive updates to the online help. Section on Visual Basic added.
  119.   Delphi section greatly expanded
  120.  
  121. - FBGetXXXResults, FBGetXXXVariable and FBSetXXXVariable added to enhance
  122.   Visual Basic support
  123.  
  124. ============
  125. Jan 13, 1996
  126. ============
  127.  
  128. - Bug Fix : An erroneous error was reported on parenthesized terms.
  129.  
  130. - Bug Fix : GPFs would occur in FBInitExpression if a NULL/NIL was passed
  131.   as a parameter descriptor for a function with 0 parameters
  132.  
  133. - New optimization feature , constant folding, added
  134.  
  135. - Added Delphi unit with example code from the Help File
  136.  
  137. ============
  138. Jan 18, 1996
  139. ============
  140.  
  141. - Delphi : Import unit now explicit. The DLL loads only when the first
  142.   TExpression instance initializes, and releases after the last TExpression
  143.   Frees.
  144.  
  145. - Delphi : Classes are now components with the appopriate palette bitmaps.
  146.   The registration unit is FBREG.PAS. Install into compoonent palette as
  147.   usual.
  148.  
  149. - Delphi : Added TDSFilter - a no-code dataset (actually datasource) filter
  150.   based on Uli Zindler's DBFiltUZ
  151.  
  152. - Delphi : Added TDSFilterExpression and TDBFilterExpression. These are subclasses
  153.   of TDSExpression and TDBExpression respectively which permit only boolean
  154.   expressions
  155.  
  156.  
  157. ============
  158. Jan 20, 1996
  159. ============
  160.  
  161. - Field callbacks eliminated. Fields & variables are both handled in variable
  162.   callbacks. A field is recognized in a callback by the fact that the varname
  163.   parameter still contains the field parameters '[' and ']'
  164.  
  165. - Delphi : DefaultVarProcessing property eliminated. Replaced with UseEvents
  166.   property
  167.  
  168. - Internally managed variables can now peacefully co-exist with variables
  169.   handled by the ONXXXVariable events or callbacks.
  170.  
  171. ============
  172. Jan 23, 1996
  173. ============
  174.  
  175. - Delphi : Enhanced component help.
  176.  
  177. - Delphi : Created FBUILDER.KWF. Tested and works in Delphi Multi-Help system.
  178.   Components now have popup help available from the Object inspector
  179.  
  180. - Delphi : modified example projects to use components.
  181.  
  182. - Constant folding optimization witheld to allow further testing. Will be
  183.   re-introduced in version 2.0 along with short-circuit boolean evaluation
  184.   ( currently being tested )
  185.  
  186. ============
  187. Feb 28, 1996
  188. ============
  189.  
  190. - Delphi : Added TRTTIExpression, and associated support routines
  191.  
  192. - Bug Fix : A variable name which appeared as the first parameter of a function
  193.   would not be recognized if it immediately followed the left paren with no
  194.   spaces.
  195.  
  196. - YGB's new address is 103515.1757@compuserve.com
  197.  
  198. =============
  199. March 8, 1996
  200. =============
  201.  
  202. - Bug fix. Parenthesized terms which appeared as the last item of the last
  203.   parameter of a function would cause an erroneous EXPR_MISSING_OPERAND.
  204.   For example
  205.  
  206.      sin( pi * (1 + pi))
  207.  
  208.   would cause an error whereas
  209.  
  210.      sin( (pi + 1) * pi )
  211.  
  212.    would be handled correctly
  213.  
  214. - Improved detection of paren mismatches
  215.  
  216. - FBInitExpression now returns a long integer value
  217.  
  218. - Delphi : InitFBuilder (FBCALC.PAS) now raises an exception if DLL won't load
  219.  
  220. - Bug Fix. Delphi : FreeFbuilder (in FBCALC.PAS) would not unload the DLL when
  221.   the reference count in the FBCALC unit reached 0. Also added code to ensure
  222.   that the DLL does not unload if it is active in the Delphi design environment.
  223.  
  224. - Moved error text strings to string table resources
  225.  
  226. - Delphi - xxxResult properties of TExpression changed to AsXXX to conform
  227.   to general Delphi naming conventions.
  228.  
  229. - Visual Basic : Calling FBPeekVarVB would cause a GPF. Fixed. Also added
  230.   a Parameter, vtype, to return the variable's type
  231.  
  232. - Bug Fix : FBSetVarFromString returned an undefined error if the function
  233.   was successful
  234.  
  235. - Added much improved random number generator
  236.  
  237. - Bug Fix : incorrect parameter count passed to callbacks for function call
  238.   with no parameters
  239.  
  240. - ROUND() now takes an optional second parameter specifying the number of
  241.   decimal places
  242.  
  243. - Integer divide by zero now caught in DLL
  244.  
  245. - Bad expressions in EXPRLIST.TXT corrected
  246.  
  247. - Bug Fix : Domain errors on functions (eg. ACSC) now reported correctly
  248.  
  249. - Visual Basic example improved. Now includes graphing demo
  250.  
  251. [* RELEASE 1.0 ------------------------------------------------------------*]
  252.  
  253.  
  254. clayton collie
  255. YGB Software, Inc
  256.